﻿using System;
using System.Collections.Generic;
using System.Data;
using System.Windows.Forms;

namespace GUI.BR
{
    using EXT;
    using BLL;
    using DevExpress.Utils;

    public partial class frmChititetNCC : GUI.Danhmuc.ChitietDanhmuc.frmInputChitietDanhmuc
    {
        public frmChititetNCC()
        {
            InitializeComponent();
        }

        public static bool CorE = true;
        public static DataRow DR;

        private void Load_NCC()
        {
            var NCC_BLL = new NCCBLL();
            var dt = NCC_BLL.NCC_Select_All_Vali();
            if (dt.Rows.Count > 0)
            {
                gcDanhsach.DataSource = dt;
                gvDanhsach.BestFitColumns();
            }
        }

        private void frmChititetNCC_Load(object sender, EventArgs e)
        {
            WaitDialogForm wdf = new WaitDialogForm("Đang load dữ liệu...", "Xin chờ trong giây lát.");
            Load_NCC();
            wdf.Close();
        }

        private void btnThem_Click(object sender, EventArgs e)
        {
            var frm = new frmNCC(true);
            frm.MyEvent_LoadData_Chitiet += new MyEvent_LoadData(frm_MyEvent_LoadData_Chitiet);
            frm.Show();
        }

        private void frm_MyEvent_LoadData_Chitiet(object sender, ELoadData e)
        {
            Load_NCC();
        }

        private void btnSua_Click(object sender, EventArgs e)
        {
            DR = gvDanhsach.GetFocusedDataRow();
            if (DR["Id"].ToString().Trim() != string.Empty)
            {
                CorE = false;
                var frmncc = new frmNCC(false);
                frmncc.MyEvent_LoadData_Chitiet += new MyEvent_LoadData(frmncc_MyEvent_LoadData_Chitiet);
                frmncc.ShowDialog();
                CorE = true;
                DR = null;
            }
        }

        private void frmncc_MyEvent_LoadData_Chitiet(object sender, ELoadData e)
        {
            if (e.IsLoadData)
            {
                Load_NCC();
            }
        }

        private void btnXoa_Click(object sender, EventArgs e)
        {
            var Id = gvDanhsach.GetFocusedRowCellValue("Id").GetGuid();
            if (Id != Guid.Empty)
            {
                if (MsgC.MsgQuestionYN("Bạn có chắc muốn xóa nhà cung cấp " + gvDanhsach.GetFocusedRowCellValue("Ten").ToString() + " không?") == DialogResult.Yes)
                {
                    var NCC_BLL = new NCCBLL();
                    if (NCC_BLL.NCC_Delete(Id))
                    {
                        MsgC.MsgOK("Đã xóa nhà cung cấp");
                        Load_NCC();
                    }
                    else
                    {
                        if (NCC_BLL.NCC_Delete0_Update(Id))
                        {
                            MsgC.MsgOK("Đã ẩn nhà cung cấp");
                            Load_NCC();
                        }
                        else
                        {
                            MsgC.MsgWarning("Không thể kết nối đến CSDL\n\n Vui lòng liên hệ ADMIN để biết thêm thông tin");
                        }
                    }
                }
            }
        }
    }
}
